#include"BST.h"
#include<string>

//int main()
//{
//	KeyValue::BSTree<string, string> dic;
//	dic.Insert("left", "左边");
//	dic.Insert("right", "右边");
//	dic.Insert("string", "字符串");
//	dic.Insert("insert", "插入");
//
//	string str;
//	while (cin >> str)//string的流提取  ctrl+^Z +enter杀掉进程
//	{
//		//auto ret = dic.Find(str);
//		KeyValue::BSTNode<string, string>* ret = dic.Find(str);
//		if (ret)
//		{
//			cout << "->" << ret->_value << endl;
//		}
//		else
//		{
//			cout << "无此单词，请重新输入！！！" << endl;
//		}
//	}
//
//	return 0;
//}

int main()
{
	// 统计水果出现的次数
	string arr[] = { "苹果", "西瓜", "苹果", "西瓜", "苹果", "苹果", "西瓜",
   "苹果", "香蕉", "苹果", "香蕉" };
	KeyValue::BSTree<string, int> countTree;
	for (const auto& str : arr)
	{
		// 先查找水果在不在搜索树中
		// 1、不在，说明水果第一次出现，则插入<水果, 1>
		// 2、在，则查找到的节点中水果对应的次数++
		//BSTreeNode<string, int>* ret = countTree.Find(str);
		auto ret = countTree.Find(str);
		if (ret == NULL)
		{
			countTree.Insert(str, 1);
		}
		else
		{
			ret->_value++;
		}
	}
	countTree.InOrder();

	return 0;
}

